

$(function() {
    window.setTimeout(function() {
        $("#flashSMSMain").fadeOut("slow");
    }, 2000);
//    notificacion
    $('#StatusBar').jnotifyInizialize({
        oneAtTime: true
    });
    $('#Notification')
            .jnotifyInizialize({
                oneAtTime: false,
                appendType: 'append'
            })
            .css({'position': 'absolute',
                'marginTop': '20px',
                'right': '20px',
                'width': '250px',
                'z-index': '9999'
            });
    //cierra las ul abiertos al renderizar la vista
    $('#left-panel-content li > a')
            .each(function() {
                var sub = $(this).parent();
                $(this).next().slideUp(0);
                if (sub.hasClass("active")) {
                    $(this).next().slideDown(200);
                }

            });
    /**
     * Crea la animacion que abre los submenus
     */
    jQuery('#left-panel-content li > a').click(function() {
        var last = jQuery('.sub-menu.open', $('#left-panel-content'));
        last.removeClass("open");
        jQuery('.arrow', last).removeClass("open");
        jQuery('.sub', last).slideUp(200);
        var sub = jQuery(this).next();
        if (sub.is(":visible")) {
//            alert("dasd");
            jQuery('.arrow', jQuery(this)).removeClass("open");
            jQuery(this).parent().removeClass("open");
            sub.slideUp(200);
        } else {
//            alert("al");
            jQuery('.arrow', jQuery(this)).addClass("open");
            jQuery(this).parent().addClass("open");
            sub.slideDown(200);
        }
    });



});
/**
 * Inicializar el objeto jnotification
 * @param {type} texto
 * @returns {undefined}
 */
function setJNotifycationOk(texto) {
    $('#Notification').jnotifyAddMessage({
        text: texto,
        permanent: false,
    });
}
/**
 * Inicializa el objeto jstatusbar
 * @param {type} texto
 * @returns {undefined}
 */
function setJStatusBar(texto) {
    $('#StatusBar').jnotifyAddMessage({
        text: texto,
        permanent: false,
//        type: 'error'
    });
}

/**
 * Cambia los nombres de los valores nutricionales a partir de los nombres que se encuentran en la base de datos
 * @author Mauricio Chamorro <mrchamorro@utn.edu.ec>
 * @param {type} nombre
 * @returns {listaOrigen}
 */
function UtilCambioNombreValNutricional(nombre) {
    listaOrigen = {"porcentaje_agua": "Agua ",
        "agua_g": "Agua ", "energia_kcal": "Energía ", "proteinas_g": "Proteínas ",
        "grasa_total_g": "Grasa total ", "carbohidratos_g": "Carbohidratos ",
        "fibra_dietetica_g": "Fibra dietética ", "fibra_cruda_g": "Fibra cruda ",
        "fibra_dietaria_g": "Fibra dietaria ", "ceniza_g": "Ceniza ", "calcio_mg": "Calcio ", "fosforo_mg": "Fósforo ", "hierro_mg": "Hierro ",
        "tiamina_mg": "Tiamina ", "riboflavina_mg": "Riboflavina ", "niacina_mg": "Niacina ", "vitamina_c_mg": "Vitamina C ",
        "vitamina_a_eqiv_retinol_mcg": "Vitamina A 'retinol' ", "acidos_grasos_monoinsat_g": "Ácidos grasos monoinsat ",
        "acidos_grasos_poliinsaturad_g": "Ácidos grasos poliinsaturad ", "acidos_grasos_saturados_g": "Ácidos grasos saturados ",
        "colesterol_mg": "Colesterol ", "potasio_mg": "Potasio ", "sodio_mg": "Sodio ", "zinc_mg": "Zinc ", "magnesio_mg": "Magnesio ",
        "vitamina_b6_mg": "Vitamina B6 ", "vitamina_b12_mcg": "Vitamina B12 ", "folato_mcg": "Folato ", "porcentaje_fracc_comestible": "Fracc comestible"
        , "b_caroteno_equiv_totales_ug": "B caroteno equiv totales ", "retinol_ug": "Retinol "};
    if (listaOrigen[nombre]) {
        return listaOrigen[nombre];
    }
    else {
        return nombre;
    }
}

/**
 * Obtiene las medidas de los valores nutricionales segun el nombre que muestra en la base de datos
 * @author Mauricio Chamorro <mrchamorro@utn.edu.ec>
 * @param {type} nombre
 * @returns {listaOrigen}
 */
function UtilGetUnidadMedidaValNutricional(nombre) {
    listaOrigen = {"porcentaje_agua": "% ",
        "agua_g": "(g)", "energia_kcal": "(kcal)", "proteinas_g": "(kcal)",
        "grasa_total_g": "(kcal)", "carbohidratos_g": "(kcal)",
        "fibra_dietetica_g": "(g)", "fibra_cruda_g": "(g)",
        "fibra_dietaria_g": "(g)", "ceniza_g": "(g)", "calcio_mg": "(mg)", "fosforo_mg": "(mg)", "hierro_mg": "(mg)",
        "tiamina_mg": "(mg)", "riboflavina_mg": "(mg)", "niacina_mg": "(mg)", "vitamina_c_mg": "(mg)",
        "vitamina_a_eqiv_retinol_mcg": "(mcg)", "acidos_grasos_monoinsat_g": "(kcal)",
        "acidos_grasos_poliinsaturad_g": "(kcal)", "acidos_grasos_saturados_g": "(kcal)",
        "colesterol_mg": "(mg)", "potasio_mg": "(mg)", "sodio_mg": "(mg)", "zinc_mg": "(mg)", "magnesio_mg": "(mg)",
        "vitamina_b6_mg": "(mg)", "vitamina_b12_mcg": "(mcg)", "folato_mcg": "(mcg)", "porcentaje_fracc_comestible": "%"
        , "b_caroteno_equiv_totales_ug": "(ug)", "retinol_ug": "(ug)"};
    if (listaOrigen[nombre]) {
        return listaOrigen[nombre];
    }
    else {
        return nombre;
    }
}

/**
 * Devuelve un color randomico en hexadecimal
 * @author Mauricio Chamorro <mchamorro@utn.edu.ec>
 * @returns {hue|String}
 */
function colorRandomico() {
    return hue = "#" + ((1 << 24) * Math.random() | 0).toString(16);
}


/**
 * Carga un modal con el una imagen ajax loader
 * @author Mauricio Chamorro <mrchamorro@utn.edu.ec>
 */
function verCargandoDatosModal() {
    resetearDatosModal();
    var html = "";
    html += "<center><div><img src='" + themeUrl + "/img/ajaxLoader/loading.gif' /></div>";
    html += "<div><span>Cargando datos, por favor espere un momento... </span></div></center><br>";
    $("#dataModalBody").html(html);
    $("#mainModal").attr("loading", "true");
    
    $('#mainModal').modal({
        backdrop: 'static',
        keyboard: false
    })
    $("#mainModal").modal("show");
//$("#mainModal").css("width","100px !important");
}

/**
 * Cierra el modal 
 * @author Mauricio Chamorro <mrchamorro@utn.edu.ec>
 */
function cerrarCargandoDatosModal() {
    $("#mainModal").modal("hide");
}
/**
 * Resetea el modal dejandolo vacio 
 * @author Mauricio Chamorro <mrchamorro@utn.edu.ec>
 */
function resetearDatosModal() {
    var html = "";
    $("#dataModalBody").html(html);
    $("#reportsModalBody").html(html);
    $("#titleModal").html(html);
}

function openModalData(titleModal, dataModalBody) {
    resetearDatosModal();
    var closeButton = '<button id="btnCerrarModal" data-dismiss="modal" class="close" type="button">×</button>';
    
    $("#dataModalBody").html(dataModalBody);
    $("#titleModal").html(closeButton+ titleModal);
    $("#mainModal").attr("loading", "false");
    $("#mainModal").modal("show");
    
}

/**
 * Para usar en caso de errores en ajax y mostrar en modal
 * @param {int} id
 * @param {String} header
 * @param {array} body
 */
function openModal(id, header, body) {

    var closeButton = '<button id="btnCerrarModal" data-dismiss="modal" class="close" type="button">×</button>';
    $("#" + id + " .modal-header").html(closeButton + '<h3>' + header + '</h3>');
    $("#" + id + " .modal-body").html(body);
    $('#btnCerrarModal').on('click', function() {
        resetearDatosModal();
    });
//     $("#" + id + " .modal-footer").html(footer data); // you can also change the footer
//    $("#" + id).modal("show");

    $("#mainModal").modal("show");
}


/**
 * Elimina los valores repetidos de un vector
 * @param {array} list
 * @returns {unique.result|Array}
 */
function unique(list) {
    var result = [];
    $.each(list, function(i, e) {
        if ($.inArray(e, result) == -1)
            result.push(e);
    });
    return result;
}

/**
 * Proporciona la edad en meses
 *  @author Mauricio Chamorro <mrchamorro@utn.edu.ec>
 * @param {Date} Fecha desde la cual se va a calcular comparando con la fecha actual
 * @returns {int} cantidad de meses
 */
function edad(Fecha1, fecha2) {
    fecha = new Date(Fecha1)
    console.log(fecha);
    if (fecha2 != '') {
        hoy = new Date(fecha2 + "T00:00:00")
    } else {
        hoy = new Date();
    }
    console.log(hoy);
//        ed = parseInt((hoy - fecha) / 365 / 24 / 60 / 60 / 1000)
    edM = parseInt((hoy - fecha) / 30.42 / 24 / 60 / 60 / 1000)
//        edSem= parseInt((hoy - fecha)/ 7.6 / 24 / 60 / 60 / 1000)
    return edM;
}
/**
 * Ayuda a mostrar informacion en un subpanel con informacion de ayuda
 * @param {html} contexto
 * @returns {undefined}
 */
function loadAyudante(contexto) {
    $('#contenido').remove();
    var texto = '<div id="contenido" class="well">' +
            '<div class="portlet-decoration">' +
            '<div  class="portlet-title"> <center style="color:blue !important" ><b>Ayuda </b></center></div> </div>' +
            '<div class="portlet-content">' +
            '<div class="well" style="background-color:white !important; width: 100%; padding-left: 0px; padding-right: 0px;">' +
            contexto +
            '</div>' +
            '</div>' +
            '</div>';
    $('#ayuda').append(texto);
}

